FloorDiv
传入两个等长的浮点型数组,对于数组中对位元素做除法,再对除法所得结果执行向下取整操作。
\[dst_i = floorf(\frac{input0_i}{input1_i})\]
- 输入:
input0 - 被除数数据地址。
input1 - 除数数据地址。
length - 计算长度。
core_mask - 核掩码(仅适用于共享存储版本)。
- 输出:
output - 计算结果地址。
- 支持平台:
FT78NEMT7004备注
FT78NE 支持fp32, fp64
MT7004 支持fp16, fp32
共享存储版本:
-
void hp_floordiv_s(half *src_data0, half *src_data1, half *dst_data, int length, int core_mask)
-
void fp_floordiv_s(float *src_data0, float *src_data1, float *dst_data, int length, int core_mask)
-
void dp_floordiv_s(double *src_data0, double *src_data1, double *dst_data, int length, int core_mask)
C调用示例:
1//FT78NE示例 2#include <stdio.h> 3#include <floordiv.h> 4 5int main(int argc, char* argv[]) { 6 float *input0 = (float *)0xA0000000; //input在DDR空间 7 float *input1 = (float *)0xB0000000; 8 float *output = (float *)0xC0000000; 9 int length = 1000; 10 int core_mask = 0xff; 11 fp_floordiv_s( input0,input1, output, length,core_mask); 12 return 0; 13}
私有存储版本:
-
void hp_floordiv_p(half *src_data0, half *src_data1, half *dst_data, int length)
-
void fp_floordiv_p(float *src_data0, float *src_data1, float *dst_data, int length)
-
void dp_floordiv_p(double *src_data0, double *src_data1, double *dst_data, int length)
C调用示例:
1//FT78NE示例 2#include <stdio.h> 3#include <floordiv.h> 4int main(int argc, char* argv[]) { 5 float *input0 = (float *)0x10810000; //input在L2空间 6 float *input1 = (float *)0x10820000; 7 float *output = (float *)0x10830000; 8 int length = 100; 9 fp_floordiv_p( input0, input1, output, length); 10 return 0; 11}